<?php
/*
 * Created on 2008-6-30
 * 静态页面缓存功能
 * File:news_htm.php
 * Author:David Meng
 * Site:http://www.systn.com
 * Email:mdchinese@gmail.com
 *
 */
	
	$page_title = '静态页面处理';
	
	$form_src	= 'action='.$action.'&todo=update';
	
	//静态页面数量
	$htm_num	= 15;
	
	
	//静态化标题
	$subject	= '站内文章';
	$data_dir	= 'data/'.$model;
	
	
	switch($type){
		//检测运行
		case'run':
			//获得分类id
			$cate_query = $oArticles->getListCate();
			while ($cl  = $db->fetch_array($cate_query)){
				$cate_list[] = $cl;
			}
			if($list_id<=0){
				$list_id = 0;
			}else{
				$newid = (int)$list_id;
				//如果新ID存在则继续运行
				if((int)$cate_list[$list_id][id]>0){
					$list_id = $newid;
				}else{
					$list_id = '-1';
				}
			}
			
			//分类ID
			$cid = $cate_list[$list_id]['id'];
			//分类名称
			$cate_name = $cate_list[$list_id]['title'];
			
			
			//检测是否可以运行
			if($list_id>=0){
				
				
				//获取新闻列表
				$info = $oArticles->getList("WHERE a.cate_id='$cid'",$htm_num);
				
				while ($dt = $db->fetch_array($info['query'])){
					//静态文件
					$oArticles->writeHtm($dt[id],'view',$model);
					
					//用于列表
					$data_list[] = $dt;
				}
				
				
				//有数据产生文章列表
				if (is_array($data_list)){
					
					$pages = paging($info['info'],'html');
					
					//技术文章
					$art_list = $db->query("SELECT * FROM articles WHERE cate_id<>'$cid' GROUP BY id ORDER BY rand()",25);
					
					$tpl->set_var('art_list',$art_list);		//相关文章列表
					$tpl->set_var('cate_name',$cate_name);			//分类名称
					$tpl->set_var('pages',$pages);					//分页代码
					$tpl->set_var('data_dir',$data_dir);			//写入目录文件夹
					$tpl->set_var('_data_list',$data_list);
					$tpl->set_file($model."_list",$tpl_set['TemplateDir'].'/'.$model);
					$htm_data = $tpl->r();
					
					
					//写入数据提供资料
					$wdata 	= array(
						'write_id'=>$cid.'_list_'.$info['info']['nowpage'],	//写入id
						'write_file'=>$model,								//写入地址
						'subject'=>$subject,								//文章标题
						'data'=>$htm_data,									//区块数据
					);
					
					//写入静态
					$oHtml->writer($wdata);
				}
				
				
				
				//总页面数
				$all_num	= (int)$info['info']['nums'];
				//执行页面数
				$run_num	= $info['info']['limit']*$info['info']['nowpage'];
				if ($run_num>$all_num){
					$run_num= $all_num;
				}
				
				
				//处理流程
				$process	= (int)number_format($run_num/$info['info']['nums']*100,2);
				
				//翻转下一页
				$nextpage	= $info['info']['nowpage']+1;
				//结束处理
				if($nextpage>$info['info']['pages']){
					$pagetype	= $type.'&page=0';
					$list_id	= $list_id+1;//递增新分类
				}else{
					$pagetype	= $type.'&page='.($nextpage);
				}
				//跳转连接
				$nexturl	= $siteurl.$sys_page.'?model='.$model.'&action='.$action.'&list_id='.$list_id.'&type='.$pagetype;
				
				
			}else{
				msg('',$siteurl.$sys_page.'?model='.$model.'&action='.$action.'&type=end');
			}
			
		break;
		
		
		
		
		
		
		//结束页面更新首页
		case'end':
				//软件文章
				$art_cate = $db->query("SELECT * FROM articles_cate WHERE id in(1,2,3,4,5,7) GROUP BY id",10);
				
				$tpl->set_var(array(
						'art_cate'=>$art_cate,
						'_info'=>$info,
						'_siteurl'=>$siteurl,
					)
				);
				$tpl->set_file($model."_index",$tpl_set['TemplateDir'].'/'.$model);
				$htm_data = $tpl->r();
				
				//写入数据提供资料
				$wdata 	= array(
					'write_id'=>'index',	//写入id
					'write_file'=>$model,					//写入地址
					'subject'=>$subject,				//文章标题
					'data'=>$htm_data,							//区块数据
				);
					
				//写入静态
				$oHtml->writer($wdata);
		break;
		
		
		
		
		
		//清除目录
		case'clear':
				//清除目录
				$files = scandir($data_dir);
				for($i= 3; $i<count($files); $i++) {
					$clear_file = $i;
					@unlink($data_dir.'/'.$files[$i]);
				}
			
		break;
		
		
	}
	
	//静态处理效果页面
	$tpl->set_file('sys_htm_write');
	$fpage = $tpl->r();
?>